var deviceone = require("deviceone");
var page = deviceone.sm("do_Page");
var nf = deviceone.sm("do_Notification");
var do_InitData = deviceone.sm("do_InitData");
var external = deviceone.sm("do_External");
// 定义一个SinaWeiBo对象
var sina = deviceone.sm("do_SinaWeiBo");
var qq = deviceone.sm("do_TencentQQ");
var we = deviceone.sm("do_TencentWX");
var deviceUtil = require("helper/device");
var httpSilence = require("helper/httpSilence");
var shareUrl = require("url/share");
/** 微信appid * */
var wx_appId = "";
/** 新浪微博appId * */
var sina_appId = "";
/** QQappId * */
var qq_android_appId = "";
/** QQappId * */
var qq_ios_appId = "";
var defaultImage = "data://share_logo.jpg";

module.exports.type = {
	/** 大喇叭 * */
	COMMUNIty_MESSAGE : 1,
	/** 活动 * */
	ACTIVITY : 2,
	/** 商城商品 * */
	MALL_PRODUCT : 3,
	/** 圈子话题 * */
	CIRCLE_TOPIC : 4,
	/** 抽奖 * */
	DRAW : 5,
	/** 广告 * */
	AD : 6,
	/** 广告 * */
	COMMUNITY_AD : 7,
	/** 圈商 * */
	Q_SHOP : 8,
	/** 订单分享 * */
	SHARE_ORDER : 9
};
function addShare(bizzId, bizzType, title, content, url) {
	httpSilence.post(shareUrl.url.base.add, {
		bizzId : bizzId,
		bizzType : bizzType,
		title : title,
		content : content,
		url : url
	}, function(data) {

	})
}
/**
 * do_TencentWX.share（异步方法） 名称 : 微信分享 传入参数 : Id 类型 默认值 必填项 说明 appId String 是
 * 在微信开放平台申请的appId scene Number 0 是 0：分享到微信好友；1：分享到微信朋友圈 type Number 0 是
 * 0：默认，图文分享；1：纯图分享，只支持本地图片；2：音乐分享 title String 否 分享的标题 content String 否
 * 分享的文本内容,图文分享时不能为空 url String 否 分享后点击文本打开的地址 image String 否
 * 分享后显示的图片，纯图分享时候不能为空 audio String 否 音乐文件的远程链接, 以URL的形式传入, 不支持本地音乐
 */

/**
 * 分享到微信好友 title 分享标题 content 分享的文本内容,图文分享时不能为空 url 分享后点击文本打开的地址 image
 * 分享后显示的图片，纯图分享时候不能为空
 */
module.exports.wxShareFriend = function(title, content, image, url, shareType,
		shareId) {
	if(null==url){
		url=shareUrl.url.base.detail+"?shareId="+shareId+"&shareType="+shareType;
	}
	if (shareType == 9) {//分享订单奖励
		addShare(shareId, shareUrl.bizzType.SHARE_ORDER, title, content, url);
	}
	if (shareType == 5) {//抽奖
		addShare(shareId, shareUrl.bizzType.SHARE_DRAW, title, content, url);
	}
	httpSilence.post(shareUrl.url.base.get, {}, function(data) {
		if (data.shareConfigBean) {
			wx_appId = data.shareConfigBean.wxAppId;
			sina_appId = data.shareConfigBean.sinaAppId;
			qq_android_appId = data.shareConfigBean.qqAndroidAppId;
			qq_ios_appId = data.shareConfigBean.qqIosAppId;
			if (null == image || '' == image) {
				image = defaultImage;
			} else {
				if (image.indexOf("@") > 0) {
					image = image.substring(0, image.indexOf("@"))
							+ "@200h_200w_1e_1c";
				} else {
					image = image + "@200h_200w_1e_1c";
				}

			}

			if (null == content || '' == content) {
				content = "幸福圈圈";
			} else if (content.length > 500) {
				content = content.substring(0, 500);// 分享的消息摘要【接口没有说明限长度,实际是500】
			}
			if (null == title || '' == title) {
				title = (content.length > 100) ? content.substring(0, 100)
						: content;
			} else if (content.length > 100) {
				title = title.substring(0, 100);// 分享的标题【接口没有说明限长度,实际是120】
			}

			// deviceone.print(title,"share2微信好友-title");
			// deviceone.print(content,"share2微信好友-content");
			we.share({
				appId : wx_appId,
				scene : 0,
				type : 0,
				title : title,
				content : content,
				url : url,
				image : image
			}, function(data, e) {
				if (data == true) {
					page.fire("share_close");
					nf.toast("分享成功");
				}
			});
		}
	});
}
/**
 * 分享到微信朋友圈; title 分享标题 content 分享的文本内容,图文分享时不能为空 url 分享后点击文本打开的地址 image
 * 分享后显示的图片，纯图分享时候不能为空
 */
module.exports.wxShareFriendCircle = function(title, content, image, url,
		shareType, shareId) {
	if(null==url){
		url=shareUrl.url.base.detail+"?shareId="+shareId+"&shareType="+shareType;
	}
	if (shareType == 9) {//分享订单奖励
		addShare(shareId, shareUrl.bizzType.SHARE_ORDER, title, content, url);
	}
	if (shareType == 5) {//抽奖
		addShare(shareId, shareUrl.bizzType.SHARE_DRAW, title, content, url);
	}
	httpSilence.post(shareUrl.url.base.get, {}, function(data) {
		if (data.shareConfigBean) {
			wx_appId = data.shareConfigBean.wxAppId;
			sina_appId = data.shareConfigBean.sinaAppId;
			qq_android_appId = data.shareConfigBean.qqAndroidAppId;
			qq_ios_appId = data.shareConfigBean.qqIosAppId;
			if (null == image || '' == image) {
				image = defaultImage;
			} else {
				if (image.indexOf("@") > 0) {
					image = image.substring(0, image.indexOf("@"))
							+ "@200h_200w_1e_1c";
				} else {
					image = image + "@200h_200w_1e_1c";
				}

			}
			if (null == content || '' == content) {
				content = "幸福圈圈";
			} else if (content.length > 500) {
				content = content.substring(0, 500);// 分享的消息摘要,【接口没有说明限长度,实际是500】
			}
			if (null == title || '' == title) {
				title = (content.length > 100) ? content.substring(0, 100)
						: content;
			} else if (content.length > 100) {
				title = title.substring(0, 100);// 分享的标题,【接口没有说明限长度,实际是120】
			}
			// deviceone.print(title,"share2朋友圈-title");
			// deviceone.print(content,"share2朋友圈-content");
			we.share({
				appId : wx_appId,
				scene : 1,
				type : 0,
				title : title,
				content : content,
				url : url,
				image : image
			}, function(data, e) {
				if (data == true) {
					page.fire("share_close");
					nf.toast("分享成功");
				}
			});
		}
	});

}
/**
 * 分享到新浪; title 分享标题 content 分享的文本内容,图文分享时不能为空 url 分享后点击文本打开的地址 image 只支持本地图片
 */
module.exports.sinaShare = function(title, content, image, url, shareType,
		shareId) {
	if(null==url){
		url=shareUrl.url.base.detail+"?shareId="+shareId+"&shareType="+shareType;
	}
	if (shareType == 9) {//分享订单奖励
		addShare(shareId, shareUrl.bizzType.SHARE_ORDER, title, content, url);
	}
	if (shareType == 5) {//抽奖
		addShare(shareId, shareUrl.bizzType.SHARE_DRAW, title, content, url);
	}
	httpSilence.post(shareUrl.url.base.get, {}, function(data) {
		if (data.shareConfigBean) {
			wx_appId = data.shareConfigBean.wxAppId;
			sina_appId = data.shareConfigBean.sinaAppId;
			qq_android_appId = data.shareConfigBean.qqAndroidAppId;
			qq_ios_appId = data.shareConfigBean.qqIosAppId;
			image = defaultImage;
			if (null == content || '' == content) {
				content = "幸福圈圈";
			} else if (content.length > 500) {
				content = content.substring(0, 500);// 分享的消息摘要,最长40个字符【实际是500】
			}
			if (null == title || '' == title) {
				title = (content.length > 100) ? content.substring(0, 100)
						: content;
			} else if (content.length > 100) {
				title = title.substring(0, 100);// 分享的标题,最长30个字符【实际是120】
			}
			url = url.replace("&amp;", "&");
			// deviceone.print(title,"share2新浪微博-title");
			// deviceone.print(content,"share2新浪微博-content");
			/**
			 * share（异步方法） 名称 : 分享到新浪微博 传入参数 : Id 类型 默认值 必填项 说明 appId String 是
			 * 在微博开发平台上申请的appId type Number 0 是
			 * 0：默认，图文分享；1：网页分享；2：音乐分享；3：视频分享；4：音频分享； title String 是 分享的标题,
			 * 最长30个字符 image String 是 分享后显示的图片，只支持本地图片data:// url String 是
			 * 文件的远程链接, 以URL的形式传入 summary String 否 分享的消息摘要，最长40个字符
			 */
			sina.share({
				appId : sina_appId,
				type : 1,
				title : title,
				image : image,
				url : url,
				summary : content
			}, function(data, e) {
				if (data == true) {
					page.fire("share_close");
					nf.toast("分享成功");
				}
			});
		}
	});

}

/**
 * 分享给qq好友 title 分享标题 content 分享的文本内容,图文分享时不能为空 url 分享后点击文本打开的地址 image
 * 只支持本地图片,data目录下
 */
module.exports.qqShareFriend = function(title, content, image, url, shareType,
		shareId) {
	if(null==url){
		url=shareUrl.url.base.detail+"?shareId="+shareId+"&shareType="+shareType;
	}
	if (shareType == 9) {//分享订单奖励
		addShare(shareId, shareUrl.bizzType.SHARE_ORDER, title, content, url);
	}
	if (shareType == 5) {//抽奖
		addShare(shareId, shareUrl.bizzType.SHARE_DRAW, title, content, url);
	}
	httpSilence.post(shareUrl.url.base.get,{},
		function(data) {
			if (data.shareConfigBean) {
				wx_appId = data.shareConfigBean.wxAppId;
				sina_appId = data.shareConfigBean.sinaAppId;
				qq_android_appId = data.shareConfigBean.qqAndroidAppId;
				qq_ios_appId = data.shareConfigBean.qqIosAppId;
				var osType = deviceUtil.getOsType();
				var appId = qq_android_appId;
				if (osType == 2) {// ios
					appId = qq_ios_appId;
				}
				if (null == content || '' == content) {
					content = "幸福圈圈";
				} else if (content.length > 500) {
					content = content.substring(0, 500);// 分享的消息摘要,最长40个字符【实际是500】
				}
				if (null == title || '' == title) {
					title = (content.length > 100) ? content
							.substring(0, 100) : content;
				} else if (content.length > 100) {
					title = title.substring(0, 100);// 分享的标题,最长30个字符【实际是120】
				}
				image = defaultImage;
				// deviceone.print(title,"share2 qq好友-title");
				// deviceone.print(content,"share2 qq好友-content");
				var fileExist = do_InitData
						.fileExist("initdata://share_logo.jpg");
				if (!fileExist) {
					nf.alert("请更新APP到最新版本再使用分享到QQ好友","温馨提示",function(data, e) {
						external.openURL("http://a.app.qq.com/o/simple.jsp?pkgname=com.qqtech.qquan.product");
					});
				}
				/**
				 * shareToQQ（异步方法） 名称 : 分享到QQ好友 传入参数 : Id 类型 默认值 必填项
				 * 说明 appId String 是 在QQ互联申请的appId type Number 0 是
				 * 0：默认，图文分享；1：纯图分享，只支持本地图；2：音乐分享；3：应用分享 title
				 * String 是 分享的标题, 最长30个字符 url String 否
				 * 分享后点击文本后打开的地址 image String 否
				 * 分享后显示的图片，纯图分享时候不能为空，仅支持本地图片data://目录 summary
				 * String 否 分享的消息摘要，最长40个字 audio String 否 音乐文件的远程链接,
				 * 以URL的形式传入, 不支持本地音乐 appName String 否
				 */
				qq.shareToQQ(appId, 0, title, url, image, content,"", "", function(data, e) {
						if (data == true) {
							page.fire("share_close");
							nf.toast("分享成功");
						}
				});
			}
		});
}

/**
 * 分享给qq空间 title 分享标题 content 分享的文本内容,图文分享时不能为空 url 分享后点击文本打开的地址 image
 * 只支持本地图片,data目录下
 */
module.exports.qqShareQzone = function(title, content, image, url, shareType,
		shareId) {
	if(null==url){
		url=shareUrl.url.base.detail+"?shareId="+shareId+"&shareType="+shareType;
	}
	if (shareType == 9) {//分享订单奖励
		addShare(shareId, shareUrl.bizzType.SHARE_ORDER, title, content, url);
	}
	if (shareType == 5) {//抽奖
		addShare(shareId, shareUrl.bizzType.SHARE_DRAW, title, content, url);
	}
	httpSilence.post(shareUrl.url.base.get,{},function(data) {
		if (data.shareConfigBean) {
			wx_appId = data.shareConfigBean.wxAppId;
			sina_appId = data.shareConfigBean.sinaAppId;
			qq_android_appId = data.shareConfigBean.qqAndroidAppId;
			qq_ios_appId = data.shareConfigBean.qqIosAppId;
			var osType = deviceUtil.getOsType();
			var appId = qq_android_appId;
			if (osType == 2) {// ios
				appId = qq_ios_appId;
			}
			if (null == image || '' == image) {
				image = defaultImage;
			} else {
				if (image.indexOf("@") > 0) {
					image = image.substring(0, image
							.indexOf("@"))
							+ "@200h_200w_1e_1c";
				} else {
					image = image + "@200h_200w_1e_1c";
				}

			}
			if (null == content || '' == content) {
				content = "幸福圈圈";
			} else if (content.length > 500) {
				content = content.substring(0, 500);// 分享的消息摘要,最长600个字符【实际是500】
			}
			if (null == title || '' == title) {
				title = (content.length > 100) ? content
						.substring(0, 100) : content;
			} else if (content.length > 100) {
				title = title.substring(0, 100);// 分享的标题,最长200个字符【实际是120】
			}
			// deviceone.print(title,"share2 qq空间-title");
			// deviceone.print(content,"share2 qq空间-content");
			var fileExist = do_InitData
					.fileExist("initdata://share_logo.jpg");
			if (!fileExist) {
				nf.alert("请更新APP到最新版本再使用分享到QQ好友","温馨提示",function(data, e) {
					external.openURL("http://a.app.qq.com/o/simple.jsp?pkgname=com.qqtech.qquan.product");
				});
			}
			/**
			 * shareToQzone（异步方法） 名称 : 分享到QQ空间 传入参数 : Id 类型 默认值
			 * 必填项 说明 appId String 是 在QQ互联申请的appId type Number 0
			 * 是 0：默认，图文分享；1：应用分享 title String 是 分享的标题, 最长200个字符
			 * url String 是 分享后点击文本后打开的地址 image String 是
			 * 分享后显示的图片，仅支持本地图片data://目录 summary String 否
			 * 分享的消息摘要，最长600个字
			 */
			qq.shareToQzone(appId, 0, title, url, image,content, function(data, e) {
						if (data == true) {
							page.fire("share_close");
							nf.toast("分享成功");
						}
			});
		}
	});
}